package com.dustedpixels.jasmin.video;

/**
 * The Video unit.
 * <p>
 * The Video system uses "pull" rendering model. It means, that the Video unit
 * informs its context that the new frame is available, and the context pulls
 * current frame from the Video unit at appropriate time.
 * <p>
 * Currently, only palette color model is supported, up to 256 colors. In the
 * future, true-color models may be supported when needed.
 */
public interface Video {
    /**
     * Renders pixels of the current frame.
     * 
     * @param buffer The pixels buffer.
     */
    void render(RenderingContext context);
}
